package rohyunji;

public class J06_Conversions {
	/*
	 형변환 Convrsions
	 서로 다른 자료형의 처리할때 종종 변환이 필요하다 
	 float avg=(float)tot/3;
	 단 , 두변수가 같은자료형이라면 성공적으로 처리가능.
	 같은 유형으로 변환하는 것을 동질성 변환이라 함 
	 */

	public static void main(String[] args) {
	
		//동질성 변환 
		int a=90;
		int b=a;
		
		System.out.println("b="+b);
		
		//확대형변환
		long e=a;
		
		//축소형 변환 (확대형변환과 달리 명시적이어야합니다,괄호안에 유형을 지정하는것이 Cast연산자라고 한다)
		int d=(int)e; //long이크니깐 ㅎㅎㅎ
		System.out.println("d="+d);
		
		
	
		int sum=50;
		float avg=sum/3;
		System.out.println("avg="+avg);
		
		// 강제변환(float,double 예제에서 볼수 있듯이 정밀도 손상은 있을수 있음)
		float c=80.5F;
		int f=(int)c; 
		System.out.println("f="+f);
		
		//---------------------------------------------------------------------------------
		// 연산자 우선순위 (별별별별별)-중요해해해해해해
		

		int g=1,h=2, i=6;
		int j=g+h*i;//j=13
		System.out.println(j);
		
		
		int k=5,l=5;
		boolean m=k*5==l+20;// 25==25? True 
		
		//---------------------------------------------------------------------------------
		//승격
		byte n=5;
		byte o=(byte)-n;//놀랍게도?오류발생 ㅋㅋ 이항연산제 -에의해 n변수가 int형으로 승격 
		int o1=-n;
		
		short q=100;
		short r=200;
		short s=(short)(q+r);
		int s1=q+r;
		
		System.out.println(s+","+s1);//이항연산자 +에 의해 int형으로 승격
		
		//---------------------------------------------------------------------------------
		//연결 (join)연산자+()
		
		char n1='김',n2='유',n3='신';
		System.out.println(n1+""+n2+""+n3);
		
		
		
		
		
		
		
		

	

		

	}

}
